草庐IT

c++ - 结构 vector

全部标签

golang 中的 C long double

我正在将算法从C移植到Go。我有点困惑。这是C函数:voidgauss_gen_cdf(uint64_tcdf[],longdoublesigma,intn){inti;longdoubles,d,e;//Calculations...for(i=1;i并在for循环中将值“s”分配给数组cdf中的元素“x”。这怎么可能?据我所知,longdouble是float64(在Go上下文中)。所以我不应该能够编译C代码,因为我正在将一个longdouble分配给一个只包含uint64元素的数组。但C代码运行良好。那么有人可以解释为什么这是有效的吗?非常感谢。更新:函数的原始C代码可以在这里找

go - 源结构上的外键?

我从Gorm开始并尝试对以下内容进行建模:typeMyLinkstruct{gorm.ModelTitlestringUrlstring}//groupoflinksunderasingletitletypeMyLinkSectionstruct{gorm.ModelTitlestringLinks[]MyLink}typeMyPagestruct{gorm.ModelPageUrlMyLinkArtists[]MyLinkSection}如您所见,我希望能够引用相同的结构MyLink作为来自MyPage的外键对象,但也作为一对一许多来自MyLinkSection。看来我必须在MyLi

go - 在 golang 中类型转换重叠结构

我是golang的新手,正在尝试找出将字节block转换为正确结构的正确方法。所有结构都以两个字节开头,这两个字节指示其余字节的布局。在C中,我会指向内存块的开头并将其转换为仅包含这两个字节(下面的X)的简单结构,但在这里我得到一个无效的类型断言。我可能离题太远了,不胜感激。packagemainimport("fmt")typeAstruct{tagbyteverbytedata1intdata2intdata3int}typeBstruct{tagbyteverbytedata1float32}typeXstruct{tagbyteverbyte}funcmain(){varaAa

go - 用子结构初始化结构

我正在尝试创建一个具有其他结构值的结构。例如一个过滤器:typeForSaleFilterstruct{Searchstring}typeJobFilterstruct{JobTypestring}typeFilterstruct{ForSaleForSaleFilterJobsJobFilter}我似乎找不到比这一长行代码更好的方法来创建结构:filter:=Filter{ForSale:ForSaleFilter{搜索:"coolstuff"}}有没有更好的方法来创建它?有点像filter:=Filter{ForSale{搜索:“酷东西”}}会很理想。也许我可以重组我的结构来做到这

json - Protocol Buffer 格式的匿名结构

给定这样一个Go结构:typeHousestruct{AddressstringRooms[]struct{NamestringWindowsintDoorsint}}或等效的JSON表示:{"address":"""rooms":[{"name":"""windows":0"doors":0}]}等效的ProtocolBuffer表示是什么?这或多或少是我想做的(尽管不是有效的Proto语法):messageHouse{stringaddress=1;repeatedmessage{stringname=3;int32windows=4;int32doors=5;}rooms=2;}

xml - Golang 将结构索引更改为定义值

见下面的代码:打印出v.Src[0]和v.Src[1]调出“MySource”和“MySource2”。但是比较XML,条目[0]和[1]不遵循x中设置的ID我怎样才能实现解码器正在使用x作为索引?目标:v.Src[1]打印“MySource”这是我的工作代码主要包import("encoding/xml""fmt")typeFlowstruct{Idstring`xml:"id"`Namestring`xml:"name"`}typeSrcstruct{Idstring`xml:"id"`Namestring`xml:"name"`Flows[]Flow`xml:"flows>flo

go - 如何从 GO 结构中获取嵌入式类型?

我正在尝试从Go结构中获取嵌入式类型。下面是一个演示这一点的示例程序。有没有一种方法可以编写myfunc()而无需枚举可以作为输入的每种类型?https://play.golang.org/p/5wp14O660mpackagemainimport("fmt")typeObjectMetastruct{NamestringNamespacestring}typeAstruct{ObjectMetaXstring}typeBstruct{ObjectMetaXstring}funcmyfunc(vinterface{})ObjectMeta{switchu:=v.(type){case*

c - 如何从 Go 函数返回 C 指针?

我有疑问是否可以从C上的Go函数指针返回?例如main.c可以是:structopen_db_returndb_ptr=open_db(db_path);GoSlicebacket={"DB",2,2};GoSlicekey={"CONFIG",6,6};structget_value_returnval=get_value(db_ptr.r0,backet,key);close_db(db_ptr.r0);接下来是Go代码://exportopen_dbfuncopen_db(pathstring)(interface{},error){db,err:=db.Open(path,06

go - 传递任意结构作为函数参数

我正在处理二进制文件。我需要一个函数,它采用任意结构并返回这些结构的数组。我该怎么做?下面是我要完成的一个简单示例。目前,我对每个结构都有一个功能。唯一的区别在于:dataBuf,err:=make([]arbitrary_struct_type,numRecs)typestructAstruct{idint32sDatefloat64namestring}typestructBstruct{areaint32polygonstring}typestructCstruct{sTimefloat64eTimefloat64tSliceint32kmlstring}funcreadData

pointers - 在 Go 中使用类似的指针结构分配结构

我有两个相似的结构,我想将一个分配给另一个。第一个“Equipment”是用来匹配数据库的结构。第二个“JsonEquipment”是解析JSON数据的辅助结构。例子如下:typeEquipmentstruct{IDuintCategoryIDuintIpstringLoginstringPasswordstring}typeJsonEquipmentstruct{ID*uintCategory*stringIp*stringLogin*stringPassword*string}指针用于检查该字段是否存在于JSON中。更多信息:Howtorecognizevoidvalueandun